package ar.com.gestion.dao;

import java.util.List;

import org.springframework.jdbc.core.JdbcTemplate;

import ar.com.gestion.dominio.Cliente;
import ar.com.gestion.rowmapper.ClienteRowMapper;

public class ClientesDAO {

	private JdbcTemplate jdbcTemplate;

	public List<Cliente> getAllClientes() {

		String sql = "select* from clientes";

		List<Cliente> clientes = jdbcTemplate
				.query(sql, new ClienteRowMapper());

		return clientes;

	}

	public void guardarCliente(Cliente cliente) {

		String sql = "insert into clientes (nombre,apellido,direccion,telefono,saldo) values (?,?,?,?,?)";
		jdbcTemplate.update(
				sql,
				new Object[] { cliente.getNombre(), cliente.getApellido(),
						cliente.getDireccion(), cliente.getTelefono(),
						cliente.getSaldo() });
	}

	public Cliente getClienteByID(int id_cliente) {

		String sql = "select * from clientes where id_cliente =?";
		Cliente cliente = jdbcTemplate.queryForObject(sql,
				new Object[] { id_cliente }, new ClienteRowMapper());
		return cliente;

	}

	public void updateCliente(Cliente cliente) {

		String sql = "update clientes set nombre=?,apellido=?,direccion=?,telefono=?,saldo=? where id_cliente =?";
		jdbcTemplate.update(sql,new Object[]{cliente.getNombre(),cliente.getApellido(),cliente.getDireccion(),cliente.getTelefono(),cliente.getSaldo(),cliente.getIdCliente()});
		

	}

	public JdbcTemplate getJdbcTemplate() {
		return jdbcTemplate;
	}

	public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
		this.jdbcTemplate = jdbcTemplate;
	}

}
